package a.j;

import a.c.d;
import a.c.q;
import a.c.v;
import a.d.t;
import a.d.w;
import a.f.zb;

import java.awt.*;
import java.awt.geom.*;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.ArrayList;

public abstract class tb
  implements zb
{
  static final int a = 1;
  static final int b = 2;
  public static final byte c = 0;
  public static final byte d = 4;
  public static final byte e = 8;
  public static final byte f = 12;
  public static final byte g = 28;
  Object h;
  Object i;
  private boolean j;
  int k;
  private d l;
  private Color m;
  private c n;
  private ab o;
  private ab p;
  private ArrayList q;
  private byte r;
  private boolean s;
  private zd t;
  private zd u;
  private float v;
  private float w;
  private float x;
  private float y;
  private boolean z;
  private static Color A = Color.orange;
  private static c B = c.i;
  private static Color C = Color.green;
  protected h D;
  protected GeneralPath E;
  Rectangle2D.Float F;
  public static boolean G;
  
  protected tb()
  {
    f();
    this.m = Color.black;
    this.n = c.e;
    this.p = (this.o = ab.e);
    a(new zd());
    b(new zd());
  }
  
  protected tb(tb paramtb)
  {
    f();
    a(paramtb);
  }
  
  void a(tb paramtb)
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    this.m = paramtb.A();
    this.n = paramtb.D();
    this.p = paramtb.G();
    this.o = paramtb.I();
    this.h = paramtb.h;
    this.i = paramtb.i;
    int i1 = paramtb.V();
    if (!bool2)
    {
      if (i1 > 0) {
        this.q = new ArrayList(i1);
      }
    }
    else
    {
      int i2 = 0;
      do
      {
        if (i2 >= i1) {
          break;
        }
        if (bool1) {
          break label120;
        }
        a((ig)paramtb.d(i2).clone());
        i2++;
      } while (!bool1);
    }
    label120:
    fb localfb = paramtb.o();
    if (localfb.e()) {}
    do
    {
      eb localeb = c(localfb.a().b(), localfb.a().c());
      if (bool1) {
        return;
      }
      if ((bool2) || (localeb != null)) {
        localeb.a(localfb.a().d());
      }
      localfb.f();
      if (!bool1) {
        break;
      }
      a(paramtb.k().a());
      b(paramtb.l().a());
      this.s = paramtb.P();
      b(paramtb.K());
      this.z = paramtb.z;
    } while (bool2);
    this.j = true;
  }
  
  public tb e()
  {
    return b(this);
  }
  
  public abstract tb b(tb paramtb);
  
  private void f()
  {
    this.k = 1;
    this.E = new GeneralPath(1, 2);
    this.D = new h();
    this.j = true;
  }
  
  protected void a(d paramd)
  {
    this.l = paramd;
    Q();
  }
  
  public ld g()
  {
    return ((g)this.l.c()).w(this.l.f());
  }
  
  public ld h()
  {
    return ((g)this.l.c()).w(this.l.e());
  }
  
  public d i()
  {
    return this.l;
  }
  
  g j()
  {
    if ((ld.E) || (this.l != null)) {
      return (g)this.l.c();
    }
    return null;
  }
  
  public void a(zd paramzd1, zd paramzd2)
  {
    a(paramzd1);
    b(paramzd2);
  }
  
  public void a(zd paramzd)
  {
    paramzd.a(this);
    this.t = paramzd;
    Q();
  }
  
  public void b(zd paramzd)
  {
    paramzd.a(this);
    this.u = paramzd;
    Q();
  }
  
  public zd k()
  {
    return this.t;
  }
  
  public zd l()
  {
    return this.u;
  }
  
  public abstract eb a(double paramDouble1, double paramDouble2, eb parameb, int paramInt);
  
  public abstract void a(eb parameb1, eb parameb2, int paramInt);
  
  public abstract eb b(double paramDouble1, double paramDouble2);
  
  public abstract eb a(eb parameb);
  
  public void a(eb parameb, double paramDouble1, double paramDouble2) {}
  
  protected void m() {}
  
  public eb c(double paramDouble1, double paramDouble2)
  {
    return a(paramDouble1, paramDouble2, q(), 0);
  }
  
  public int b(eb parameb)
  {
    return this.D.indexOf(parameb);
  }
  
  public int n()
  {
    return this.D.size();
  }
  
  public eb b(int paramInt)
  {
    return (eb)this.D.a(paramInt);
  }
  
  public fb o()
  {
    return this.D.m();
  }
  
  public eb p()
  {
    if (!ld.E) {
      if (this.D.size() == 0) {
        return null;
      }
    }
    return (eb)this.D.a();
  }
  
  public eb q()
  {
    if (!ld.E) {
      if (this.D.size() == 0) {
        return null;
      }
    }
    return (eb)this.D.d();
  }
  
  public int r()
  {
    return 0;
  }
  
  public void s()
  {
    this.D.clear();
    Q();
  }
  
  public w a(int paramInt)
  {
    eb localeb = b(paramInt);
    if (localeb != null) {
      return new w(localeb.b(), localeb.c());
    }
    return null;
  }
  
  public int a()
  {
    return n();
  }
  
  public w c()
  {
    zd localzd = k();
    return new w(localzd.f(), localzd.g());
  }
  
  public w d()
  {
    zd localzd = l();
    return new w(localzd.f(), localzd.g());
  }
  
  public void a(w paramw)
  {
    k().b(paramw.a(), paramw.b());
  }
  
  public void b(w paramw)
  {
    l().b(paramw.a(), paramw.b());
  }
  
  public void a(int paramInt, double paramDouble1, double paramDouble2)
  {
    eb localeb = b(paramInt);
    if ((ld.E) || (localeb != null)) {
      localeb.a(paramDouble1, paramDouble2);
    }
  }
  
  public void a(double paramDouble1, double paramDouble2)
  {
    c(paramDouble1, paramDouble2);
  }
  
  public void b()
  {
    s();
  }
  
  public void a(gb paramgb) {}
  
  public void a(Graphics2D paramGraphics2D)
  {
    boolean bool = ld.E;
    if (!bool)
    {
      if (!K()) {
        return;
      }
      if (!bool) {
        a(paramGraphics2D, kg.e(paramGraphics2D));
      }
    }
    else if (!b(paramGraphics2D, true))
    {
      return;
    }
    h(paramGraphics2D);
  }
  
  void b(Graphics2D paramGraphics2D)
  {
    a(paramGraphics2D, true);
  }
  
  private void a(Graphics2D paramGraphics2D, boolean paramBoolean)
  {
    boolean bool4 = ld.E;
    boolean bool3 = ld.D;
    GeneralPath localGeneralPath1 = this.E;
    if ((bool4) || ((!paramBoolean) && (localGeneralPath1.getPathIterator(null).isDone()))) {
      return;
    }
    Stroke localStroke = paramGraphics2D.getStroke();
    Color localColor = paramGraphics2D.getColor();
    boolean bool1 = a(this, paramGraphics2D);
    if (bool1)
    {
      if (bool4) {
        break label94;
      }
      if (A != null)
      {
        paramGraphics2D.setColor(A);
        if (bool4) {
          break label131;
        }
        if (!bool3) {
          break label123;
        }
      }
    }
    label94:
    Object localObject = A();
    if (!bool4)
    {
      if (localObject != null) {
        paramGraphics2D.setColor((Color)localObject);
      }
    }
    else
    {
      if (bool4) {
        break label131;
      }
      if (!bool3) {
        break label123;
      }
    }
    return;
    label123:
    paramGraphics2D.setStroke(c.e);
    if (paramBoolean)
    {
      label131:
      localObject = h();
      double d3 = this.t.a((ld)localObject);
      double d4 = this.t.b((ld)localObject);
      v localv = this.D.f();
      if (localv != null) {}
      double d1;
      double d2;
      do
      {
        eb localeb = (eb)localv.c();
        d1 = localeb.b();
        d2 = localeb.c();
        paramGraphics2D.drawLine((int)d3, (int)d4, (int)d1, (int)d2);
        d3 = d1;
        d4 = d2;
        localv = localv.a();
        if (bool4) {
          break label297;
        }
        if (bool3) {
          break label295;
        }
        if (!bool3) {
          break;
        }
        localObject = g();
        d1 = this.u.a((ld)localObject);
        d2 = this.u.b((ld)localObject);
      } while (bool4);
      paramGraphics2D.drawLine((int)d3, (int)d4, (int)d1, (int)d2);
      label295:
      label297:
      if (!bool3) {}
    }
    else
    {
      boolean bool2 = I() != ab.e;
      int i1 = H() != ab.e ? 1 : 0;
      if ((bool4) || ((bool2) || (i1 != 0)))
      {
        GeneralPath localGeneralPath2 = new GeneralPath(localGeneralPath1.getWindingRule());
        Point2D localPoint2D;
        if (!bool4)
        {
          if (bool2)
          {
            localPoint2D = x();
            localGeneralPath2.moveTo((float)localPoint2D.getX(), (float)localPoint2D.getY());
          }
          localGeneralPath2.append(localGeneralPath1, bool2);
        }
        if (!bool4)
        {
          if (i1 != 0)
          {
            localPoint2D = y();
            localGeneralPath2.lineTo((float)localPoint2D.getX(), (float)localPoint2D.getY());
          }
          paramGraphics2D.draw(localGeneralPath2);
          if (bool4) {
            return;
          }
        }
        if (!bool3) {}
      }
      else
      {
        paramGraphics2D.draw(localGeneralPath1);
      }
    }
    paramGraphics2D.setStroke(localStroke);
    paramGraphics2D.setColor(localColor);
  }
  
  public void t()
  {
    d locald = i();
    if ((ld.E) || (locald != null))
    {
      q localq = locald.c();
      if ((localq instanceof g))
      {
        Rectangle2D.Double localDouble = new Rectangle2D.Double(0.0D, 0.0D, -1.0D, -1.0D);
        a(localDouble);
        ((g)localq).b(localDouble.x, localDouble.y, localDouble.width, localDouble.height);
      }
    }
  }
  
  public void c(Graphics2D paramGraphics2D)
  {
    boolean bool2 = ld.E;
    if (!bool2) {
      if ((this.k & 0x1) == 0) {
        return;
      }
    }
    if (!bool2) {
      if (R()) {
        v();
      }
    }
    if ((this.k & 0x2) == 0) {
      return;
    }
    Color localColor = paramGraphics2D.getColor();
    Stroke localStroke = paramGraphics2D.getStroke();
    Object localObject = this.E;
    if (!bool2) {
      if ((this instanceof xb))
      {
        if (!bool2) {
          if (this.l.g())
          {
            if (bool2) {
              break label158;
            }
            if (n() < 2) {
              break label154;
            }
          }
        }
        if (bool2) {
          break label155;
        }
        gb localgb = mb.a(this, paramGraphics2D);
        if (localgb != null)
        {
          GeneralPath localGeneralPath = new GeneralPath();
          PathIterator localPathIterator = localgb.a(((GeneralPath)localObject).getPathIterator(null, 1.0D));
          localGeneralPath.append(localPathIterator, true);
          localObject = localGeneralPath;
        }
      }
    }
    label154:
    label155:
    label158:
    if (!bool2) {
      if (this.z) {
        localObject = ye.a((GeneralPath)localObject);
      }
    }
    boolean bool1 = a(this, paramGraphics2D);
    if (bool1)
    {
      if (bool2) {
        break label297;
      }
      if (A != null)
      {
        if (!bool2)
        {
          paramGraphics2D.setColor(A);
          if (B != null)
          {
            int i1 = (int)(this.n.getLineWidth() - B.getLineWidth());
            if (!bool2)
            {
              if (i1 >= 0)
              {
                if (bool2) {
                  break label283;
                }
                paramGraphics2D.setStroke(new BasicStroke(this.n.getLineWidth() + 4.0F, 2, 2));
              }
            }
            else {
              if (!ld.D) {
                break label282;
              }
            }
            paramGraphics2D.setStroke(B);
          }
        }
        label282:
        label283:
        paramGraphics2D.draw((Shape)localObject);
      }
    }
    if (!bool2)
    {
      if (this.m != null)
      {
        label297:
        paramGraphics2D.setColor(this.m);
        paramGraphics2D.setStroke(this.n);
        paramGraphics2D.draw((Shape)localObject);
      }
    }
    else {
      g(paramGraphics2D);
    }
    if (!bool2)
    {
      if (b(paramGraphics2D, false)) {
        h(paramGraphics2D);
      }
      f(paramGraphics2D);
      if (bool2) {}
    }
    else
    {
      if (bool1) {
        d(paramGraphics2D);
      }
      e(paramGraphics2D);
      paramGraphics2D.setStroke(localStroke);
      paramGraphics2D.setColor(localColor);
    }
  }
  
  protected void d(Graphics2D paramGraphics2D)
  {
    boolean bool = ld.D;
    paramGraphics2D.setStroke(c.e);
    if (n() > 0)
    {
      Ellipse2D.Double localDouble = hb.a().m;
      localDouble.width = (localDouble.height = 6.0D);
      fb localfb = this.D.m();
      do
      {
        if (!localfb.e()) {
          break;
        }
        eb localeb = localfb.a();
        paramGraphics2D.setColor(C);
        localDouble.x = (localeb.b() - 3.0D);
        localDouble.y = (localeb.c() - 3.0D);
        paramGraphics2D.fill(localDouble);
        paramGraphics2D.setColor(Color.darkGray);
        paramGraphics2D.draw(localDouble);
        localfb.f();
      } while (!bool);
    }
  }
  
  protected void e(Graphics2D paramGraphics2D)
  {
    boolean bool3 = ld.E;
    boolean bool2 = ld.D;
    if ((bool3) || (!this.D.isEmpty()))
    {
      boolean bool1 = kg.b(paramGraphics2D);
      v localv = this.D.f();
      do
      {
        if (localv == null) {
          break;
        }
        eb localeb = (eb)localv.c();
        if (!bool3)
        {
          if (localeb.d())
          {
            if (bool3) {
              continue;
            }
            if (bool1) {
              localeb.a(paramGraphics2D);
            }
          }
          localv = localv.a();
        }
      } while (!bool2);
    }
  }
  
  protected void f(Graphics2D paramGraphics2D)
  {
    this.t.a(paramGraphics2D, h());
    this.u.a(paramGraphics2D, g());
  }
  
  protected void g(Graphics2D paramGraphics2D)
  {
    boolean bool3 = ld.E;
    boolean bool2 = ld.D;
    if (!bool3) {
      if (this.o == ab.e)
      {
        if (bool3) {
          break label42;
        }
        if (this.p == ab.e) {
          return;
        }
      }
    }
    label42:
    PathIterator localPathIterator = this.E.getPathIterator(null);
    hb localhb = hb.a();
    AffineTransform localAffineTransform = localhb.b;
    float[] arrayOfFloat = localhb.c;
    localPathIterator.currentSegment(arrayOfFloat);
    localPathIterator.next();
    float f1 = arrayOfFloat[0];
    float f2 = arrayOfFloat[1];
    localPathIterator.currentSegment(arrayOfFloat);
    localPathIterator.next();
    double d4 = u();
    boolean bool1;
    double d1;
    double d2;
    label190:
    double d3;
    if (!bool3) {
      if (this.o != ab.e)
      {
        bool1 = L();
        if (bool1)
        {
          d1 = this.v - f1;
          d2 = this.w - f2;
          if (!bool3) {
            if (!bool2) {
              break label190;
            }
          }
        }
        else
        {
          d1 = f1 - arrayOfFloat[0];
        }
        d2 = f2 - arrayOfFloat[1];
        d3 = Math.sqrt(d1 * d1 + d2 * d2);
        if (!bool3)
        {
          if (d3 > 0.0D)
          {
            d1 /= d3;
            d2 /= d3;
          }
        }
        else
        {
          if (!bool3)
          {
            if (bool1)
            {
              f1 = (float)(f1 + this.o.f() * d1 * d4);
              f2 = (float)(f2 + this.o.f() * d2 * d4);
            }
            if (!bool3) {
              localAffineTransform.setTransform(d1, d2, -d2, d1, f1, f2);
            }
          }
          else
          {
            if (d4 == 1.0D) {
              break label320;
            }
          }
          localAffineTransform.scale(d4, d4);
          label320:
          this.o.a(paramGraphics2D, localAffineTransform);
        }
      }
    }
    if (this.p != ab.e)
    {
      do
      {
        do
        {
          if (localPathIterator.isDone()) {
            break;
          }
          f1 = arrayOfFloat[0];
          f2 = arrayOfFloat[1];
          localPathIterator.currentSegment(arrayOfFloat);
          localPathIterator.next();
          if ((!bool3) && (bool2)) {
            return;
          }
        } while (!bool2);
        bool1 = M();
      } while (bool3);
      if (bool1)
      {
        d1 = this.x - arrayOfFloat[0];
        d2 = this.y - arrayOfFloat[1];
        if (!bool3) {
          if (!bool2) {
            break label459;
          }
        }
      }
      else
      {
        d1 = arrayOfFloat[0] - f1;
      }
      d2 = arrayOfFloat[1] - f2;
      label459:
      d3 = Math.sqrt(d1 * d1 + d2 * d2);
      if (!bool3)
      {
        if (d3 > 0.0D)
        {
          d1 /= d3;
          d2 /= d3;
        }
      }
      else
      {
        if (!bool3)
        {
          if (bool1)
          {
            int tmp514_513 = 0;
            float[] tmp514_511 = arrayOfFloat;
            tmp514_511[tmp514_513] = ((float)(tmp514_511[tmp514_513] + this.p.f() * d1 * d4));
            int tmp536_535 = 1;
            float[] tmp536_533 = arrayOfFloat;
            tmp536_533[tmp536_535] = ((float)(tmp536_533[tmp536_535] + this.p.f() * d2 * d4));
          }
          if (tmp536_533 == 0) {
            localAffineTransform.setTransform(d1, d2, -d2, d1, arrayOfFloat[0], arrayOfFloat[1]);
          }
        }
        else
        {
          if (d4 == 1.0D) {
            break label600;
          }
        }
        localAffineTransform.scale(d4, d4);
        label600:
        this.p.a(paramGraphics2D, localAffineTransform);
      }
    }
  }
  
  public double u()
  {
    double d1 = D().getLineWidth();
    if (!ld.E) {
      if (d1 != 1.0D) {
        d1 = 1.0D + (d1 - 1.0D) / 8.0D;
      }
    }
    return d1;
  }
  
  protected void h(Graphics2D paramGraphics2D)
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    if ((bool2) || (this.q != null))
    {
      int i1 = this.q.size() - 1;
      do
      {
        if (i1 < 0) {
          break;
        }
        ig localig = d(i1);
        if (!bool2)
        {
          if ((localig.B()) && ((bool2) || ((localig.H().length() != 0) || ((bool2) || (localig.z() != null))))) {
            localig.a(paramGraphics2D);
          }
          i1--;
        }
      } while (!bool1);
    }
  }
  
  static boolean a(tb paramtb, Graphics2D paramGraphics2D)
  {
    boolean bool = ld.E;
    if ((bool) || (paramtb.P())) {
      if (bool) {}
    }
    return kg.b(paramGraphics2D);
  }
  
  static boolean b(Graphics2D paramGraphics2D, boolean paramBoolean)
  {
    boolean bool = ld.E;
    Object localObject = paramGraphics2D.getRenderingHint(kg.c);
    if (!bool) {
      if (paramBoolean) {
        return kg.e.equals(localObject);
      }
    }
    if (!bool) {}
    return !kg.f.equals(localObject);
  }
  
  protected abstract byte a(Point2D paramPoint2D1, Point2D paramPoint2D2);
  
  public static final byte a(tb paramtb, GeneralPath paramGeneralPath1, GeneralPath paramGeneralPath2, Point2D paramPoint2D1, Point2D paramPoint2D2)
  {
    return ye.a(paramtb, paramGeneralPath1, paramGeneralPath2, paramPoint2D1, paramPoint2D2);
  }
  
  protected final void v()
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    hb localhb = hb.a();
    Point2D.Double localDouble1 = localhb.h;
    Point2D.Double localDouble2 = localhb.g;
    Y();
    this.k &= 0xFFFFFFF3;
    int i1 = a(localDouble1, localDouble2);
    this.k |= 0xC & i1;
    PathIterator localPathIterator = this.E.getPathIterator(null);
    int i2 = 1;
    if (!bool2)
    {
      if (localPathIterator.isDone())
      {
        i2 = 0;
        if (bool2) {
          break label140;
        }
        if (!bool1) {}
      }
      else
      {
        this.v = ((float)localDouble1.x);
        this.w = ((float)localDouble1.y);
        this.x = ((float)localDouble2.x);
      }
    }
    else {
      this.y = ((float)localDouble2.y);
    }
    label140:
    if (!bool2)
    {
      if (i2 != 0)
      {
        this.k |= 0x2;
        if (bool2) {
          return;
        }
      }
    }
    else {
      if (!bool1) {
        break label247;
      }
    }
    this.k &= 0xFFFFFFFD;
    zd localzd1 = l();
    this.x = ((float)localzd1.a(g()));
    this.y = ((float)localzd1.b(g()));
    zd localzd2 = k();
    this.v = ((float)localzd2.a(h()));
    this.w = ((float)localzd2.b(h()));
    label247:
    this.j = false;
  }
  
  public boolean w()
  {
    if (!ld.E) {}
    return (this.k & 0x3) == 3;
  }
  
  public Point2D x()
  {
    if ((ld.E) || (R())) {
      v();
    }
    return new Point2D.Float(this.v, this.w);
  }
  
  public Point2D y()
  {
    if ((ld.E) || (R())) {
      v();
    }
    return new Point2D.Float(this.x, this.y);
  }
  
  public boolean z()
  {
    return this.z;
  }
  
  public void a(boolean paramBoolean)
  {
    if (paramBoolean != this.z) {
      this.z = paramBoolean;
    }
  }
  
  public Color A()
  {
    return this.m;
  }
  
  public void a(Color paramColor)
  {
    this.m = paramColor;
  }
  
  public static Color B()
  {
    return A;
  }
  
  public static void b(Color paramColor)
  {
    A = paramColor;
  }
  
  public static void c(Color paramColor)
  {
    C = paramColor;
  }
  
  public static Color C()
  {
    return C;
  }
  
  public c D()
  {
    return this.n;
  }
  
  public void a(c paramc)
  {
    boolean bool = ld.E;
    if (!bool)
    {
      if (this.n == paramc) {
        return;
      }
      if (bool) {}
    }
    else if (this.n.getLineWidth() != paramc.getLineWidth())
    {
      if (!bool) {
        if (this.o.f() == 0.0D)
        {
          if (bool) {
            break label72;
          }
          if (this.p.f() == 0.0D) {
            break label71;
          }
        }
      }
      Q();
    }
    label71:
    label72:
    this.n = paramc;
  }
  
  public static void b(c paramc)
  {
    B = paramc;
  }
  
  public static Stroke F()
  {
    return B;
  }
  
  public ab G()
  {
    return this.p;
  }
  
  public void a(ab paramab)
  {
    b(paramab);
  }
  
  public ab H()
  {
    return this.p;
  }
  
  public void b(ab paramab)
  {
    boolean bool = ld.E;
    if (!bool)
    {
      if (paramab == this.p) {
        return;
      }
      if (bool) {}
    }
    else if (this.p.g() == paramab.g())
    {
      if (bool) {
        break label59;
      }
      if (this.p.f() == paramab.f()) {
        break label58;
      }
    }
    Q();
    label58:
    label59:
    this.p = paramab;
  }
  
  public ab I()
  {
    return this.o;
  }
  
  public void c(ab paramab)
  {
    boolean bool = ld.E;
    if (!bool)
    {
      if (paramab == this.o) {
        return;
      }
      if (bool) {}
    }
    else if (this.o.g() == paramab.g())
    {
      if (bool) {
        break label59;
      }
      if (this.o.f() == paramab.f()) {
        break label58;
      }
    }
    Q();
    label58:
    label59:
    this.o = paramab;
  }
  
  public void a(byte paramByte)
  {
    this.r = paramByte;
  }
  
  public byte J()
  {
    return this.r;
  }
  
  public void b(boolean paramBoolean)
  {
    boolean bool = ld.E;
    if (!bool)
    {
      if (paramBoolean)
      {
        if (bool) {
          break label40;
        }
        this.k |= 0x1;
      }
    }
    else if (!ld.D) {
      return;
    }
    label40:
    this.k &= 0xFFFFFFFE;
  }
  
  public boolean K()
  {
    if (!ld.E) {}
    return (this.k & 0x1) == 1;
  }
  
  public boolean L()
  {
    if (!ld.E) {}
    return (this.k & 0x4) == 4;
  }
  
  public boolean M()
  {
    if (!ld.E) {}
    return (this.k & 0x8) == 8;
  }
  
  public void c(boolean paramBoolean)
  {
    if (paramBoolean != this.s)
    {
      this.s = paramBoolean;
      g localg = j();
      if ((ld.E) || (localg != null)) {
        localg.k(i());
      }
      O();
    }
  }
  
  void O() {}
  
  public boolean P()
  {
    return this.s;
  }
  
  public void Q()
  {
    if (this.q != null) {
      for (int i1 = this.q.size() - 1; i1 >= 0; i1--)
      {
        ig localig = d(i1);
        localig.p();
      }
    }
    this.j = true;
    Y();
  }
  
  protected boolean R()
  {
    return this.j;
  }
  
  public GeneralPath S()
  {
    if (!ld.E) {
      if (R()) {
        v();
      }
    }
    return this.E;
  }
  
  public ed T()
  {
    if ((ld.E) || ((this instanceof ed))) {
      return (ed)this;
    }
    return null;
  }
  
  public void a(ig paramig)
  {
    paramig.a(this);
    if (!ld.E) {
      if (this.q == null) {
        this.q = new ArrayList(1);
      }
    }
    this.q.add(paramig);
  }
  
  public void b(ig paramig)
  {
    if ((ld.E) || (this.q != null))
    {
      this.q.remove(paramig);
      this.j = true;
    }
  }
  
  public void c(int paramInt)
  {
    if (!ld.E) {
      if (this.q == null) {
        throw new IndexOutOfBoundsException("Index: " + paramInt + ", Size: 0");
      }
    }
    try
    {
      this.q.remove(paramInt);
      this.j = true;
    }
    catch (IndexOutOfBoundsException localIndexOutOfBoundsException)
    {
      throw new IndexOutOfBoundsException("Index: " + paramInt + ", Size: " + this.q.size());
    }
  }
  
  public ig U()
  {
    if (!ld.E) {
      if (V() == 0) {
        a(X());
      }
    }
    return d(0);
  }
  
  public int V()
  {
    return (ld.E) || (this.q != null) ? this.q.size() : 0;
  }
  
  public ig d(int paramInt)
  {
    if (this.q == null) {
      throw new ArrayIndexOutOfBoundsException(0);
    }
    return (ig)this.q.get(paramInt);
  }
  
  public void a(String paramString)
  {
    U().a(paramString);
  }
  
  public String W()
  {
    return U().H();
  }
  
  public ig X()
  {
    return new ig();
  }
  
  public boolean d(double paramDouble1, double paramDouble2)
  {
    boolean bool2 = ld.E;
    if (!bool2)
    {
      if ((this.k & 0x2) == 0) {
        return false;
      }
      if (bool2) {}
    }
    else if (!R())
    {
      if (bool2) {
        break label61;
      }
      if (this.F != null) {
        break label57;
      }
    }
    this.F = a(this.F);
    label57:
    label61:
    double d1 = this.F.x - 5.0F;
    double d2 = this.F.y - 5.0F;
    double d3 = d1 + this.F.width + 10.0D;
    double d4 = d2 + this.F.height + 10.0D;
    if (!bool2) {
      if (paramDouble1 > d1)
      {
        if (bool2) {
          break label254;
        }
        if (paramDouble1 < d3)
        {
          if (bool2) {
            break label254;
          }
          if (paramDouble2 > d2)
          {
            if (bool2) {
              break label254;
            }
            if (paramDouble2 < d4)
            {
              if (!bool2) {}
              boolean bool1 = e(paramDouble1, paramDouble2) > 0;
              if (!bool2) {
                if (bool1)
                {
                  Point2D localPoint2D1 = x();
                  if (!bool2) {
                    if (localPoint2D1.distanceSq(paramDouble1, paramDouble2) < 25.0D) {
                      return false;
                    }
                  }
                  Point2D localPoint2D2 = y();
                  if (bool2) {
                    break label252;
                  }
                  if (localPoint2D2.distanceSq(paramDouble1, paramDouble2) < 25.0D) {
                    return false;
                  }
                }
              }
              label252:
              return bool1;
            }
          }
        }
      }
    }
    label254:
    return false;
  }
  
  public int e(double paramDouble1, double paramDouble2)
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    int i1 = 1;
    if (!bool2) {
      if (R()) {
        v();
      }
    }
    PathIterator localPathIterator = this.E.getPathIterator(null);
    if ((bool2) || (localPathIterator.isDone())) {
      return 0;
    }
    float[] arrayOfFloat = hb.a().c;
    localPathIterator.currentSegment(arrayOfFloat);
    localPathIterator.next();
    float f1 = arrayOfFloat[0];
    float f2 = arrayOfFloat[1];
    if (!localPathIterator.isDone()) {
      localPathIterator.currentSegment(arrayOfFloat);
    }
    while (bool2)
    {
      if (bool1) {
        break label182;
      }
      if (Line2D.ptSegDistSq(f1, f2, arrayOfFloat[0], arrayOfFloat[1], paramDouble1, paramDouble2) < 25.0D) {
        return i1;
      }
      i1++;
      localPathIterator.next();
      f1 = arrayOfFloat[0];
      f2 = arrayOfFloat[1];
      if (!bool1) {
        break;
      }
    }
    label182:
    return 0;
  }
  
  public void a(Rectangle2D paramRectangle2D)
  {
    boolean bool = ld.E;
    if (!bool) {
      if (!R())
      {
        if (bool) {
          break label47;
        }
        if (this.F != null) {
          break label38;
        }
      }
    }
    this.F = a(this.F);
    label38:
    label47:
    k.a(paramRectangle2D, this.F, paramRectangle2D);
  }
  
  public boolean a(Rectangle2D paramRectangle2D, boolean paramBoolean)
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    if (!bool2) {
      if (R()) {
        v();
      }
    }
    if (!bool2) {
      if (this.F != null)
      {
        if (bool2) {
          break label57;
        }
        if (!this.F.intersects(paramRectangle2D)) {
          return false;
        }
      }
    }
    label57:
    PathIterator localPathIterator = this.E.getPathIterator(null);
    if ((bool2) || (localPathIterator.isDone())) {
      return false;
    }
    float[] arrayOfFloat = hb.a().c;
    localPathIterator.currentSegment(arrayOfFloat);
    localPathIterator.next();
    float f1 = arrayOfFloat[0];
    float f2 = arrayOfFloat[1];
    if (!localPathIterator.isDone()) {
      localPathIterator.currentSegment(arrayOfFloat);
    }
    while (bool2)
    {
      if (bool1) {
        break label193;
      }
      if (paramRectangle2D.intersectsLine(f1, f2, arrayOfFloat[0], arrayOfFloat[1])) {
        return true;
      }
      localPathIterator.next();
      f1 = arrayOfFloat[0];
      f2 = arrayOfFloat[1];
      if (!bool1) {
        break;
      }
    }
    if (paramBoolean)
    {
      label193:
      int i1 = V() - 1;
      do
      {
        if (i1 < 0) {
          break;
        }
        ig localig = d(i1);
        if (bool1) {
          break label309;
        }
        if ((localig.B()) && ((bool2) || ((localig.H().length() != 0) || ((bool2) || (localig.z() != null)))))
        {
          t localt = localig.c();
          if (bool2) {
            continue;
          }
          if (paramRectangle2D.intersects(localt.d, localt.e, localt.a, localt.b)) {
            return true;
          }
        }
        i1--;
      } while (!bool1);
    }
    label309:
    return false;
  }
  
  void Y()
  {
    this.F = null;
  }
  
  public boolean b(Rectangle2D paramRectangle2D)
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    if (!bool2)
    {
      if (!R())
      {
        if (bool2) {
          break label44;
        }
        if (this.F != null) {
          return this.F.intersects(paramRectangle2D);
        }
      }
      label44:
      if (bool2) {}
    }
    else if (this.D.size() > 0)
    {
      localObject = this.D.f();
      do
      {
        if (localObject == null) {
          break;
        }
        eb localeb = (eb)((v)localObject).c();
        if (!bool2)
        {
          if (paramRectangle2D.contains(localeb.b(), localeb.c())) {
            return true;
          }
          localObject = ((v)localObject).a();
        }
      } while (!bool1);
    }
    Object localObject = y();
    if (!bool2)
    {
      if (paramRectangle2D.contains((Point2D)localObject)) {
        return true;
      }
      localObject = x();
    }
    if (!bool2)
    {
      if (paramRectangle2D.contains((Point2D)localObject)) {
        return true;
      }
      this.F = a(this.F);
    }
    return this.F.intersects(paramRectangle2D);
  }
  
  Rectangle2D.Float a(Rectangle2D.Float paramFloat)
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    Point2D localPoint2D = y();
    paramFloat = new Rectangle2D.Float((float)localPoint2D.getX(), (float)localPoint2D.getY(), 1.0F, 1.0F);
    if (!bool2) {
      if (R()) {
        v();
      }
    }
    Rectangle2D localRectangle2D = this.E.getBounds2D();
    if (!bool2)
    {
      if (localRectangle2D.getWidth() <= 0.0D) {
        if (bool2) {
          break label96;
        }
      }
    }
    else {
      if (localRectangle2D.getHeight() <= 0.0D) {
        break label92;
      }
    }
    paramFloat.add(localRectangle2D);
    label92:
    label96:
    double d1 = paramFloat.getX();
    double d2 = d1 + paramFloat.getWidth();
    double d3 = paramFloat.getY();
    double d4 = d3 + paramFloat.getHeight();
    int i1 = V() - 1;
    do
    {
      if (i1 < 0) {
        break;
      }
      ig localig = d(i1);
      if ((!bool2) && (bool1)) {
        return paramFloat;
      }
      if (!bool2)
      {
        if ((localig.B()) && ((bool2) || ((localig.H().length() != 0) || ((bool2) || (localig.z() != null)))))
        {
          t localt = localig.c();
          d2 = Math.max(localt.d + localt.a, d2);
          d1 = Math.min(localt.d, d1);
          d4 = Math.max(localt.e + localt.b, d4);
          d3 = Math.min(localt.e, d3);
        }
        i1--;
      }
    } while (!bool1);
    if (!bool2) {
      paramFloat.setFrame(d1, d3, d2 - d1, d4 - d3);
    }
    return paramFloat;
  }
  
  public void a(ObjectOutputStream paramObjectOutputStream)
    throws IOException
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    paramObjectOutputStream.writeByte(6);
    paramObjectOutputStream.writeInt(this.D.size());
    fb localfb = o();
    do
    {
      if (!localfb.e()) {
        break;
      }
      paramObjectOutputStream.writeFloat((float)localfb.a().b());
      paramObjectOutputStream.writeFloat((float)localfb.a().c());
      localfb.f();
      if (bool2) {
        break label118;
      }
      if (bool1) {
        break label111;
      }
    } while (!bool1);
    paramObjectOutputStream.writeObject(A());
    if (!bool2)
    {
      paramObjectOutputStream.writeByte(G().c());
      label111:
      label118:
      if (bool2) {
        break label155;
      }
      if (G().c() == 0) {
        paramObjectOutputStream.writeObject(G().d());
      }
    }
    paramObjectOutputStream.writeByte(I().c());
    label155:
    if (!bool2)
    {
      if (I().c() == 0) {
        paramObjectOutputStream.writeObject(I().d());
      }
      c.a(paramObjectOutputStream, this.n);
      paramObjectOutputStream.writeObject(r.c(this.t.getClass().getName()));
      this.t.a(paramObjectOutputStream);
      paramObjectOutputStream.writeObject(r.c(this.u.getClass().getName()));
      this.u.a(paramObjectOutputStream);
      paramObjectOutputStream.writeInt(V());
    }
    int i1 = 0;
    if (i1 < V())
    {
      d(i1).a(paramObjectOutputStream);
      i1++;
    }
    for (;;)
    {
      if ((bool2) || (!bool1))
      {
        if (!bool1) {
          break;
        }
        paramObjectOutputStream.writeBoolean(K());
        if (!bool2) {
          paramObjectOutputStream.writeBoolean(this.z);
        }
      }
    }
  }
  
  public void a(ObjectInputStream paramObjectInputStream)
    throws IOException, ClassNotFoundException
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    byte b1 = paramObjectInputStream.readByte();
    if (!bool2) {}
    switch (b1)
    {
    case 0: 
      g(paramObjectInputStream);
      if (!bool2) {
        if (!bool1) {
          return;
        }
      }
    case 1: 
      f(paramObjectInputStream);
      if (!bool2) {
        if (!bool1) {
          return;
        }
      }
    case 2: 
      e(paramObjectInputStream);
      if (!bool2) {
        if (!bool1) {
          return;
        }
      }
    case 3: 
      c(paramObjectInputStream);
      if (!bool2) {
        if (!bool1) {
          return;
        }
      }
    case 4: 
      b(paramObjectInputStream);
      if (!bool2) {
        if (!bool1) {
          return;
        }
      }
    case 5: 
      b(paramObjectInputStream);
      b(paramObjectInputStream.readBoolean());
      if (!bool2) {
        if (!bool1) {
          return;
        }
      }
    case 6: 
      b(paramObjectInputStream);
      b(paramObjectInputStream.readBoolean());
      this.z = paramObjectInputStream.readBoolean();
      if (!bool1) {
        return;
      }
      break;
    }
    throw new a.e.c(b1);
  }
  
  void b(ObjectInputStream paramObjectInputStream)
    throws IOException, ClassNotFoundException
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    int i1 = paramObjectInputStream.readInt();
    int i2 = 0;
    do
    {
      do
      {
        if (i2 >= i1) {
          break;
        }
        c(paramObjectInputStream.readFloat(), paramObjectInputStream.readFloat());
        i2++;
        if (bool2) {
          break label77;
        }
        if (bool1) {
          break label76;
        }
      } while (!bool1);
      a((Color)paramObjectInputStream.readObject());
    } while (bool2);
    i2 = paramObjectInputStream.readByte();
    label76:
    label77:
    if (!bool2)
    {
      if (i2 != 0) {
        a(ab.a(i2));
      }
    }
    else
    {
      if (bool2) {
        break label142;
      }
      if (!bool1) {
        break label131;
      }
    }
    Object localObject = ab.a((String)paramObjectInputStream.readObject());
    label131:
    byte b1;
    if (!bool2)
    {
      if (localObject != null) {
        a((ab)localObject);
      }
      if (!bool2) {
        b1 = paramObjectInputStream.readByte();
      }
    }
    else if (b1 != 0)
    {
      label142:
      c(ab.a(b1));
      if (bool2) {
        break label199;
      }
      if (!bool1) {
        break label191;
      }
    }
    localObject = ab.a((String)paramObjectInputStream.readObject());
    if (!bool2)
    {
      if (localObject != null) {
        c((ab)localObject);
      }
      label191:
      this.n = c.a(paramObjectInputStream);
    }
    try
    {
      label199:
      localObject = r.d((String)paramObjectInputStream.readObject());
      this.t = ((zd)Class.forName((String)localObject).newInstance());
      this.t.a(paramObjectInputStream);
      a(this.t);
      localObject = r.d((String)paramObjectInputStream.readObject());
      this.u = ((zd)Class.forName((String)localObject).newInstance());
      this.u.a(paramObjectInputStream);
      b(this.u);
    }
    catch (IllegalAccessException localIllegalAccessException)
    {
      throw new a.e.c("Could not construct Port!");
    }
    catch (InstantiationException localInstantiationException)
    {
      throw new a.e.c("Could not instantiate Port!");
    }
    int i3 = paramObjectInputStream.readInt();
    int i4 = 0;
    do
    {
      if (i4 >= i3) {
        break;
      }
      ig localig = X();
      a(localig);
      localig.a(paramObjectInputStream);
      i4++;
    } while (!bool1);
  }
  
  void c(ObjectInputStream paramObjectInputStream)
    throws IOException, ClassNotFoundException
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    int i1 = paramObjectInputStream.readInt();
    int i2 = 0;
    do
    {
      do
      {
        if (i2 >= i1) {
          break;
        }
        c(paramObjectInputStream.readFloat(), paramObjectInputStream.readFloat());
        i2++;
        if (bool2) {
          break label77;
        }
        if (bool1) {
          break label76;
        }
      } while (!bool1);
      a((Color)paramObjectInputStream.readObject());
    } while (bool2);
    i2 = paramObjectInputStream.readByte();
    label76:
    label77:
    if (!bool2)
    {
      if (i2 != 0) {
        a(ab.a(i2));
      }
    }
    else
    {
      if (bool2) {
        break label142;
      }
      if (!bool1) {
        break label131;
      }
    }
    Object localObject = ab.a((String)paramObjectInputStream.readObject());
    label131:
    byte b1;
    if (!bool2)
    {
      if (localObject != null) {
        a((ab)localObject);
      }
      if (!bool2) {
        b1 = paramObjectInputStream.readByte();
      }
    }
    else if (b1 != 0)
    {
      label142:
      c(ab.a(b1));
      if (bool2) {
        break label206;
      }
      if (!bool1) {
        break label191;
      }
    }
    localObject = ab.a((String)paramObjectInputStream.readObject());
    if (!bool2)
    {
      if (localObject != null) {
        c((ab)localObject);
      }
      label191:
      this.n = c.a(paramObjectInputStream.readByte(), paramObjectInputStream.readByte());
    }
    try
    {
      label206:
      localObject = r.d((String)paramObjectInputStream.readObject());
      this.t = ((zd)Class.forName((String)localObject).newInstance());
      this.t.a(paramObjectInputStream);
      a(this.t);
      localObject = r.d((String)paramObjectInputStream.readObject());
      this.u = ((zd)Class.forName((String)localObject).newInstance());
      this.u.a(paramObjectInputStream);
      b(this.u);
    }
    catch (IllegalAccessException localIllegalAccessException)
    {
      throw new a.e.c("Could not construct Port!");
    }
    catch (InstantiationException localInstantiationException)
    {
      throw new a.e.c("Could not instantiate Port!");
    }
    int i3 = paramObjectInputStream.readInt();
    int i4 = 0;
    do
    {
      if (i4 >= i3) {
        break;
      }
      ig localig = X();
      a(localig);
      localig.a(paramObjectInputStream);
      i4++;
    } while (!bool1);
  }
  
  void e(ObjectInputStream paramObjectInputStream)
    throws IOException, ClassNotFoundException
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    int i1 = paramObjectInputStream.readInt();
    int i2 = 0;
    do
    {
      do
      {
        if (i2 >= i1) {
          break;
        }
        c(paramObjectInputStream.readFloat(), paramObjectInputStream.readFloat());
        i2++;
        if (bool2) {
          break label66;
        }
        if (bool1) {
          break label65;
        }
      } while (!bool1);
    } while (bool2);
    i2 = paramObjectInputStream.readInt();
    label65:
    label66:
    int i3 = 0;
    do
    {
      do
      {
        if (i3 >= i2) {
          break;
        }
        localObject = X();
        a((ig)localObject);
        ((ig)localObject).a(paramObjectInputStream);
        i3++;
        if (bool2) {
          break label134;
        }
        if (bool1) {
          break label132;
        }
      } while (!bool1);
      a((Color)paramObjectInputStream.readObject());
    } while (bool2);
    i3 = paramObjectInputStream.readByte();
    label132:
    label134:
    if (!bool2)
    {
      if (i3 != 0) {
        a(ab.a(i3));
      }
    }
    else
    {
      if (bool2) {
        break label202;
      }
      if (!bool1) {
        break label189;
      }
    }
    Object localObject = ab.a((String)paramObjectInputStream.readObject());
    label189:
    byte b1;
    if (!bool2)
    {
      if (localObject != null) {
        a((ab)localObject);
      }
      if (!bool2) {
        b1 = paramObjectInputStream.readByte();
      }
    }
    else if (b1 != 0)
    {
      label202:
      c(ab.a(b1));
      if (bool2) {
        break label267;
      }
      if (!bool1) {
        break label252;
      }
    }
    localObject = ab.a((String)paramObjectInputStream.readObject());
    if (!bool2)
    {
      if (localObject != null) {
        c((ab)localObject);
      }
      label252:
      this.n = c.a(paramObjectInputStream.readByte(), paramObjectInputStream.readByte());
    }
    try
    {
      label267:
      localObject = r.d((String)paramObjectInputStream.readObject());
      this.t = ((zd)Class.forName((String)localObject).newInstance());
      this.t.a(paramObjectInputStream);
      a(this.t);
      localObject = localObject = r.d((String)paramObjectInputStream.readObject());
      this.u = ((zd)Class.forName((String)localObject).newInstance());
      this.u.a(paramObjectInputStream);
      b(this.u);
    }
    catch (IllegalAccessException localIllegalAccessException)
    {
      throw new a.e.c("Could not construct Port!");
    }
    catch (InstantiationException localInstantiationException)
    {
      throw new a.e.c("Could not instantiate Port!");
    }
  }
  
  void f(ObjectInputStream paramObjectInputStream)
    throws IOException, ClassNotFoundException
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    int i1 = paramObjectInputStream.readInt();
    int i2 = 0;
    do
    {
      do
      {
        if (i2 >= i1) {
          break;
        }
        c(paramObjectInputStream.readFloat(), paramObjectInputStream.readFloat());
        i2++;
        if (bool2) {
          break label66;
        }
        if (bool1) {
          break label65;
        }
      } while (!bool1);
    } while (bool2);
    i2 = paramObjectInputStream.readInt();
    label65:
    label66:
    int i3 = 0;
    do
    {
      do
      {
        if (i3 >= i2) {
          break;
        }
        localObject = X();
        ((ig)localObject).a(paramObjectInputStream);
        a((ig)localObject);
        i3++;
        if (bool2) {
          break label134;
        }
        if (bool1) {
          break label132;
        }
      } while (!bool1);
      a((Color)paramObjectInputStream.readObject());
    } while (bool2);
    i3 = paramObjectInputStream.readByte();
    label132:
    label134:
    if (!bool2)
    {
      if (i3 != 0) {
        a(ab.a(i3));
      }
    }
    else
    {
      if (bool2) {
        break label202;
      }
      if (!bool1) {
        break label189;
      }
    }
    Object localObject = ab.a((String)paramObjectInputStream.readObject());
    label189:
    byte b1;
    if (!bool2)
    {
      if (localObject != null) {
        a((ab)localObject);
      }
      if (!bool2) {
        b1 = paramObjectInputStream.readByte();
      }
    }
    else if (b1 != 0)
    {
      label202:
      c(ab.a(b1));
      if (bool2) {
        break label276;
      }
      if (!bool1) {
        break label252;
      }
    }
    localObject = ab.a((String)paramObjectInputStream.readObject());
    if (!bool2)
    {
      if (localObject != null) {
        c((ab)localObject);
      }
      label252:
      this.n = c.a(paramObjectInputStream.readByte(), paramObjectInputStream.readByte());
    }
    try
    {
      if (!bool2) {
        if (paramObjectInputStream.readBoolean())
        {
          label276:
          this.t = new zd();
          if (bool2) {
            break label362;
          }
          if (!bool1) {
            break label353;
          }
        }
      }
      localObject = (String)paramObjectInputStream.readObject();
      if (!bool2)
      {
        if (((String)localObject).startsWith("y.graph")) {
          localObject = "a.j.zd";
        }
        this.t = ((zd)Class.forName((String)localObject).newInstance());
      }
      this.t.a(paramObjectInputStream);
      label353:
      if (!bool2) {
        if (paramObjectInputStream.readBoolean())
        {
          label362:
          this.u = new zd();
          if (bool2) {
            return;
          }
          if (!bool1) {
            break label439;
          }
        }
      }
      localObject = (String)paramObjectInputStream.readObject();
      if (!bool2)
      {
        if (((String)localObject).startsWith("y.graph")) {
          localObject = "a.j.zd";
        }
        this.u = ((zd)Class.forName((String)localObject).newInstance());
      }
      this.u.a(paramObjectInputStream);
      label439:
      a(this.t, this.u);
    }
    catch (IllegalAccessException localIllegalAccessException)
    {
      throw new a.e.c("Could not construct Port!");
    }
    catch (InstantiationException localInstantiationException)
    {
      throw new a.e.c("Could not instantiate Port!");
    }
  }
  
  void g(ObjectInputStream paramObjectInputStream)
    throws IOException, ClassNotFoundException
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    int i1 = paramObjectInputStream.readInt();
    do
    {
      for (int i2 = 0; !bool1; i2++)
      {
        if (i2 >= i1) {
          break;
        }
        if (bool1) {
          break label56;
        }
        c(paramObjectInputStream.readFloat(), paramObjectInputStream.readFloat());
      }
    } while (bool2);
    label56:
    ig localig = X();
    localig.a(paramObjectInputStream);
    a(localig);
    a((Color)paramObjectInputStream.readObject());
    byte b1 = paramObjectInputStream.readByte();
    if (!bool2)
    {
      if (b1 != 0) {
        a(ab.a(b1));
      }
    }
    else
    {
      if (bool2) {
        break label168;
      }
      if (!bool1) {
        break label144;
      }
    }
    Object localObject = ab.a((String)paramObjectInputStream.readObject());
    if (!bool2)
    {
      if (localObject != null) {
        a((ab)localObject);
      }
      label144:
      this.n = c.a(paramObjectInputStream.readByte(), paramObjectInputStream.readByte());
    }
    try
    {
      if (!bool2) {
        if (paramObjectInputStream.readBoolean())
        {
          label168:
          this.t = new zd();
          if (bool2) {
            break label254;
          }
          if (!bool1) {
            break label245;
          }
        }
      }
      localObject = (String)paramObjectInputStream.readObject();
      if (!bool2)
      {
        if (((String)localObject).startsWith("y.graph")) {
          localObject = "a.j.zd";
        }
        this.t = ((zd)Class.forName((String)localObject).newInstance());
      }
      this.t.a(paramObjectInputStream);
      label245:
      if (!bool2) {
        if (paramObjectInputStream.readBoolean())
        {
          label254:
          this.u = new zd();
          if (bool2) {
            return;
          }
          if (!bool1) {
            break label331;
          }
        }
      }
      localObject = (String)paramObjectInputStream.readObject();
      if (!bool2)
      {
        if (((String)localObject).startsWith("y.graph")) {
          localObject = "a.j.zd";
        }
        this.u = ((zd)Class.forName((String)localObject).newInstance());
      }
      this.u.a(paramObjectInputStream);
      label331:
      a(this.t, this.u);
    }
    catch (IllegalAccessException localIllegalAccessException)
    {
      throw new a.e.c("Could not construct Port!");
    }
    catch (InstantiationException localInstantiationException)
    {
      throw new a.e.c("Could not instantiate Port!");
    }
  }
}



/* Location:           E:\idea\

 * Qualified Name:     a.j.tb

 * JD-Core Version:    0.7.0.1

 */